<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="es" lang="es">
<head>
<title>Inscripciones Cursos Proteco</title>
<meta http-equiv="content-type" content="application/xhtml+xml; charset=UTF-8" />
<link rel="stylesheet" href="images/VectorLover.css" type="text/css" />
<script type="text/javascript" src="js/jquery-1.4.1.min.js"></script>
<script type="text/javascript" >
		function seleccionar_paquete(objeto){
                       
			var obj = objeto;
			var padre = $(obj).parent();
			var cursos = padre.children('.panel').children("div.curso");
                        if(!valida_horario(cursos)){
                            return;
                        }
			var agregares = cursos.children('a[name="agregar"]');
			var quitares = cursos.children('a[name="quitar"]');
			agregares.css('display','none');
			quitares.css('display','inline');
			cursos.appendTo(".seleccionado");
		}
		function agregar_curso(objeto){
                        
			var obj = objeto;
			var padre = $(obj).parent();
                        if(!valida_horario(padre)){
                            return;
                        }
			var quitar = padre.children("a[name=quitar]");
			objeto.css("display","none");
			quitar.css("display","inline");
			padre.attr("class","curso_seleccionado");
			padre.appendTo(".seleccionado");
		}

                function valida_horario(objeto){
                    var cursos_seleccionados = $(".seleccionado div");
                    var bandera = true;
                    $(objeto).each(function(i,elemento){
                        var objeto_fechas = obtener_horario(elemento);
                        var nombre_curso_a = $(elemento).children('div.curso strong').html();
                        var fecha_inicio = new Date();
                        var fecha_fin = new Date();
                        fecha_inicio.establecerFecha(objeto_fechas.fecha_inicio);
                        fecha_fin.establecerFecha(objeto_fechas.fecha_fin);
                        
                        cursos_seleccionados.each(function(i,curso_activo){
                            var o_fechas = obtener_horario(curso_activo);
                            var f_inicio = new Date();
                            var f_fin = new Date();
                            var nombre_curso_b = $(curso_activo).children('div.curso strong').html();
                            f_inicio.establecerFecha(o_fechas.fecha_inicio);
                            f_fin.establecerFecha(o_fechas.fecha_fin)
                            if( !(f_fin <= fecha_inicio || f_inicio >= fecha_fin)
                                  && verifica_horario(objeto_fechas.horario,o_fechas.horario)
                                ){
                                alert("Los cursos "+nombre_curso_a+" y "+nombre_curso_b+" se traslapan");
                                bandera = false;
                                return;
                            }
                            
                        
                        });
                    });
                
                   return bandera;
                }
                function verifica_horario(hora0, hora1){
                    var h0i = horario_a_decimal(hora0.inicio);
                    var h0f = horario_a_decimal(hora0.fin);
                    var h1i = horario_a_decimal(hora1.inicio);
                    var h1f = horario_a_decimal(hora1.fin);
                    if (h0f <= h1i  ||
                        h0i >= h1f){
                        return false;
                    }else{
                        return true;
                    }

                    
                
                }
                Date.prototype.establecerFecha = function(fecha){
                    var fecha_arr = fecha.split('-');
                    this.setYear(fecha_arr[0]);
                    this.setMonth(fecha_arr[1]-1, fecha_arr[2]);
               }
                function horario_a_decimal( horario ){
                       var time_arr = horario.split(':')
                       var horas = time_arr[0];
                       var minutos = time_arr[1];

                       var dec = minutos/60;
                       return horas + dec;
                    
                }
                function obtener_horario(curso){
                    var horario = $(curso).children("ul.horario");
                    var objeto_fechas ={
                        fecha_inicio : horario.children("li[name = 'fecha_inicio']").html(), 
                        fecha_fin : horario.children("li[name = 'fecha_fin']").html(),
                        horario: { inicio : horario.children("li[name = 'horario_inicio']").html(),
                                   fin : horario.children("li[name = 'horario_fin']").html()
                                  }
                        }

                    return objeto_fechas;
                }
                
		function quitar_curso(objeto){
			var obj = objeto;
			var padre = $(obj).parent();
			var agregar = padre.children("a[name=agregar]");
			var id_paquete = padre.attr("name");
			var paquete = $("#"+id_paquete);
			var panel = paquete.children(".panel");
			objeto.css("display","none");
			agregar.css("display","inline");
			padre.attr("class","curso");
			padre.appendTo(panel);
		}
		
		function valida_nombre(){
			var cadena = $("#nombre_interesado").val();
			var regExp = /^[<?php echo utf8_encode('a-zA-Z\' �����A�������');?>]{1,100}$/
			if(regExp.test(cadena)){
				$("#error_nombre").text("Valido").show().fadeOut(1000);
				return true;
			}else{
				$("#error_nombre").text("Invalido").show();
				return false;
			}
			
		}
		function valida_apellido_paterno(){
			var cadena = $("#paterno_interesado").val();
			var regExp = /^[<?php echo utf8_encode('a-zA-Z\' �����A�������');?>]{1,100}$/
			if(regExp.test(cadena)){
				$("#error_paterno").text("Valido").show().fadeOut(1000);
				return true;
			}else{
				$("#error_paterno").text("Invalido").show();
				return false;
			}
		}
		function valida_apellido_materno(){
			var cadena = $("#materno_interesado").val();
			var regExp = /^[<?php echo utf8_encode('a-zA-Z �����A�������');?>]{1,100}$/
			if(regExp.test(cadena)){
				$("#error_materno").text("Valido").show().fadeOut(1000);

				return true;
			}else{
				$("#error_materno").text("Invalido").show();
				return false;
			}
		}
		function valida_email(){
			var cadena = $("#email_interesado").val();
			
			var regExp = /^[\w-\.]{3,}@([\w-]{2,}\.)*([\w-]{2,}\.)[\w-]{2,4}$/
			if(regExp.test(cadena)){
				$("#error_email").text("Valido").show().fadeOut(1000);
				return true;
			}else{
				$("#error_email").text("Invalido").show();
				return false;
			}
		}
		function valida_tel(){
			var cadena = $("#telefono_interesado").val();
			var regExp = /^[0-9 ]{0,24}$/
			if(regExp.test(cadena)){
				$("#error_telefono").text("").show().fadeOut(1000);
				return true;
			}else{
				$("#error_telefono").text("Solo numeros y espacios").show();
				return false;
			}
		}
		function valida_num_cuenta(){
			var cadena = $("#cuenta_interesado").val();
			var regExp = /^[0-9]{9}$/
			if(cadena == "" && valida_rfc()){
				$("#error_cuenta").text("");
				return true;
			}
			if(regExp.test(cadena)){
				$("#error_cuenta").text("Correcto").show().fadeOut(1000);
				return true;
			}else{
				$("#error_cuenta").html("Invalido.Ej:<strong>090073819</strong>").show();
				return false;
			}
		
		}
		function valida_rfc(){
			var cadena = $("#rfc_interesado").val();
			var regExp = /^[a-zA-Z]{3,4}(\d{6})((\D|\d){3})$/
			if(cadena == "" && valida_num_cuenta()){
				$("#error_rfc").text("");
				return true;
			}
			if(regExp.test(cadena)){
				$("#error_rfc").text("Correcto").show().fadeOut(1000);
				return true;
			}else{
				$("#error_rfc").html("Invalido.Ej:<strong>JRH9210065M1</strong>").show();
				return false;
			}
		}
		function valida_rfc_num_cuenta(){
			var rfc = $("#rfc_interesado").val();
			var cuenta = $("#cuenta_interesado").val();
			
			if ( (rfc.length > 0) && (cuenta.length > 0) ){
				if( valida_rfc() && valida_num_cuenta() ){
					return true;
				}else{
					return false;
				}
				
			}
			else{
				return true;
			}
		}
		function valida_por_evento(){
			$("#nombre_interesado").keyup(function(){
				valida_nombre();
			 });
			$("#paterno_interesado").keyup(function(){
				valida_apellido_paterno();
			 });
			 
			$("#materno_interesado").keyup(function(){
				valida_apellido_materno();
			 });
			$("#email_interesado").keyup(function(){
				valida_email();
			 });
			 $("#telefono_interesado").keyup(function(){
				valida_tel();
			 });
			$("#cuenta_interesado").keyup(function(){
				valida_num_cuenta();
			});
			$("#rfc_interesado").keyup(function(){
				valida_rfc();
			});
			 
		}
		function valida(){ 
			var valido = true;
			var numero_cursos = $('.seleccionado').children("div").size();
			if(!valida_nombre()){
				alert("Error en el campo Nombre");
				valido = false;
			}
			if(!valida_apellido_paterno()){
				alert("Error en el campo Apellido paterno");
				valido = false;
			}
			if( !valida_apellido_materno() ){
				alert("Error en el campo Apellido materno");
				valido = false;
			}
			if( !valida_email() ){
				alert("Error en el campo Correo Electronico");
				valido = false;
			}
			if( !valida_tel() ){
				alert("Error en el campo Telefono");
				valido = false;
			}
			
			if(!( valida_rfc() || valida_num_cuenta())){
				alert(" Error en el o los campos numero de cuenta o RFC");
				valido = false;
			}
			
			if( !( valida_rfc_num_cuenta() ) ){
				alert("Error en el o los campos numero de cuenta o RFC");
				valido = false;
			}
			
			if(!(numero_cursos > 0)){
				alert("No has seleccionado ningun curso!");
				valido = false;
			}
			if(valido){
				return true;
			}else{
				return false;
			}
			
		
		}
		function cotizar(){
			//Precios
			var punam = $('#paquete_unam span').html();
			var cunam = $('#curso_unam span').html();
			var peext = $('#paquete_estudiante span').html();
			var ceext = $('#curso_estudiante span').html();
			var ppgen = $('#paquete_general span').html();
			var cpgen = $('#curso_general span').html();
			//tipos
			var tipo = $('#tipo_interesado').val();
			//Seleccionamos todos los cursos
			var cursos = $('.seleccionado').children("div");
			if(tipo == "M"){
				precio_paquete =punam;
				precio_curso =cunam; 
			}else if(tipo == "E"){
				precio_paquete =peext;
				precio_curso =ceext; 
			}else if(tipo == "P"){
				precio_paquete =ppgen;
				precio_curso =cpgen; 
			}
			//Por costumbre un paquete esta compuesto por tres cursos, pero si en algun momento cambiara
			//Sera necesario modificar esta parte o hacer alguna consideracion para que sea dinamico 
			var _cursos = cursos.size()
			var _paquetes = parseInt(_cursos/3);
			var total = 0;
			total = _paquetes*precio_paquete + ( _cursos - _paquetes*3 )*precio_curso
			return total;
			
		}
		function genera_objeto_solicitud(){
				//Obtenemos los Campos
				var nombre = $('#nombre_interesado').val();
				var paterno = $('#paterno_interesado').val();
				var materno = $('#materno_interesado').val();
				var email = $('#email_interesado').val();
				var tel = $('#telefono_interesado').val();
				var cuenta = $('#cuenta_interesado').val();
				var rfc = $('#rfc_interesado').val();
				var tipo = $('#tipo_interesado').val();
				var cursos = $('.seleccionado').children("div");
				var id_periodo = $('#periodo_activo').val();
				//var ids_paquetes = new Array();
				var ids_cursos = new Array();
				cursos.each(function (i,n){
					ids_cursos.push($(n).attr("id"));	
				});
				var objetoSolicitud ={
					"nombre_interesado"  : nombre,
					"paterno_interesado" : paterno,
					"materno_interesado" : materno,
					"email_interesado" : email,
					"telefono_interesado" : tel,
					"cuenta_interesado" : cuenta,
					"rfc_interesado" : rfc,
					"tipo_interesado" : tipo,
					"ids_cursos" : ids_cursos,
					"id_periodo" : id_periodo
				} 
				return objetoSolicitud;
			}
		function solicitud_ajax(objeto){
				$.ajax({
					type: "POST",
					url: "solicitud_inscripcion.php",
					data:{ data: objeto },
					success: function(respuesta){
						/*Generamos nuestos Links y funciones*/
						$("#solicitudes_generadas div").html("");
						$("#solicitudes_generadas").show();
						if(respuesta.length > 0)
							$("#clave_de_captura").html("Tu clave de captura es <strong>"+respuesta[0].clave_de_captura+"</strong>");
						for(i in respuesta){
							var obj = respuesta[i]
							var serial = $.param(obj);
							var link = document.createElement("a");
							var a = $(link).attr({
									target: "_blank", 
									title: "Solicitud",
									href: "vista/solicitud_pdf.php?"+serial
								});
								a.html(obj.nombre_link);
							$("#solicitudes_generadas div").append(a);
							$("#solicitudes_generadas div").append("<br />");
							
							
						}
					},
					dataType: "json",
					error: function(XMLHttpRequest, textStatus, error){
						alert(error+XMLHttpRequest+textStatus);
					}
				
				});
		}
	window.onload = function(){
		$('.paquete a[name=mostrar]').click(function(){
			var panel = $(this).siblings('div');
			
			if($(panel).is(":hidden")){
				$(this).html("Ocultar");
				$(panel).slideToggle("slow");
			}else{
				$(this).html("Agregar Individualmente");
				$(panel).slideUp("slow");
			}
			
			return false
		});
		$('#mostrar_precios').click(function(){
			var precios = $('#precios')
			
			if($(precios).is(":hidden")){
				$(this).html("Ocultar");
				$(precios).slideToggle("slow");
			}else{
				$(this).html("Mostrar Precios");
				$(precios).slideUp("slow");
			}
			
			return false
		});
		$('.paquete a[name=seleccionar]').click(function(){
			seleccionar_paquete($(this));
			return false;
		});
		$('.curso a[name=agregar]').click(function(){
			agregar_curso($(this));
			return false;
		});
		$('.curso a[name=quitar]').click(function(){
			quitar_curso($(this));
			return false;
		});
		$('#cotizar').click(function(){
			var total = cotizar();
			$("#total").html('$'+total);
		});
		valida_por_evento();
		$('#generar').click(function(){
			if( valida() ){
				var objeto = genera_objeto_solicitud();
				solicitud_ajax(objeto);
			}
			return false;
		});
		
	};
</script>
<style type="text/css">
	.curso{
		border:2px solid #9999CC;
		margin:2px;
		padding:2px;
		background:#F0F8FF;
		color:#9999CC;
		height:40px;
	}
	.paquete{
		width:100%;
		margin:5px;
		overflow:auto;
		border:2px solid #EEE8E1;
		background:white;
		padding:5px
	}
	.paquete_seleccionado{
		
		margin:2px;
		overflow:auto;
		border:2px solid #EEE8E1;
		background:white;
		padding:5px
		
	}
	.curso_seleccionado{
		margin:2px;
		border:2px solid #9999CC;
		margin:2px;
		padding:2px;
		background:#F0F8FF;
		color:#9999CC;	
	}
	.wrap_label{
		float:left;
		width:130px;
	}
	.curso_agotado{
		border:2px solid #FF3333;
		margin:2px;
		padding:2px;
		background:#FF9999;
		color:white;
		height:40px;
	}
	.div_verde{
		border:5px solid #A6CD56;
		padding:5px;
		margin:3px;
		font-size:16px;
		display:none;
	}
	#clave_de_captura{
		padding:5px;
		margin:3px;
		font-size:14px;
	}
	
</style>
</head>

<body>
<!-- wrap starts here -->
<div id="wrap">

	<!--header -->
	<div id="header">			
				
		<h1 id="logo-text"><a href="index.html" title="">Inscripciones</a></h1>		
		<p id="slogan">Inscripciones a cursos intersemestrales del PROTECO</p>	
		
		<div id="top-menu">
			<p><a href="index.html">login</a></p>
		</div>			
				
	<!--header ends-->					
	</div>
		<!-- nav star-->
				<?php require('nav.php') ?>	
		<!-- nav end-->	
		
	<!-- content starts -->
	<div id="content">
		
		<div id="main">
				
			<a name="TemplateInfo"></a>
			<h2 ><a href="index.html" title="">SEMESTRE <?php echo $periodo_activo;?></a></h2>
			<div id="formulario">
                            <form action="#" accept-charset="UTF-8" method="post">
					<p>Formulario para solicitud de inscripcion</p>
					<input type="hidden" value="<?php echo $periodo_activo;?>" id="periodo_activo" />
					<div class="wrap_label"><label for="nombre_interesado">Nombre(s)</label></div> <input type="text" name="nombre_interesado" id="nombre_interesado" tabindex="1" />
					<span id="error_nombre"> </span><br />
					<div class="wrap_label"><label for="paterno_interesado">Apellido paterno</label></div> <input type="text" name="paterno_interesado" id="paterno_interesado" tabindex="2" />
					<span id="error_paterno"> </span><br />
					<div class="wrap_label"><label for="materno_interesado">Apellido materno</label> </div><input type="text" name="materno_interesado" id="materno_interesado" tabindex="3" />
					<span id="error_materno"> </span><br />
					<div class="wrap_label"><label for="email_interesado" >Correo electronico</label></div><input type="text" name="email_interesado" id="email_interesado" tabindex="4" />
					<span id="error_email"> </span>  <br />
					<div class="wrap_label"><label for="telefono_interesado">Telefono</label></div> <input type="text" name="telefono_interesado" id="telefono_interesado" tabindex="5" />
					<span id="error_telefono"> </span><br />
					<div class="wrap_label"><label for="cuenta_interesado">Numero de cuenta</label></div><input type="text" name="cuenta_interesado" id="cuenta_interesado" tabindex="6" />
					<span id="error_cuenta"> </span><br />
					<div class="wrap_label"><label for="rfc_interesado">RFC</label></div><input type="text" name="rfc_interesado" id="rfc_interesado" tabindex="7" />
					<span id="error_rfc"> </span>
					<br />
					
					
					<p>
					
						<select id="tipo_interesado" name="tipo_interesado" size="3" tabindex="8" >
							  <option value="M" selected="selected">Miembro UNAM</option>
							  <option value="E">Estudiante externo</option>
							  <option value="P">Public general</option>
						</select><br />
					<a href="#" id="mostrar_precios"> Mostrar Precios </a>
					<div style="font-weight:bold;display:none" id="precios">
					<?php
					if($precios){
						echo "<div id='curso_unam'>Precio por curso miembro UNAM: <span>{$precios->precio_curso_unam}</span></div>";
						echo "<div id='paquete_unam'>Precio por paquete miembro UNAM: <span>{$precios->precio_paquete_unam}</span></div>";
						echo "<div id='curso_estudiante'>Precio por curso Estudiante Externo:<span> {$precios->precio_curso_estudiante}</span></div>";
						echo "<div id='paquete_estudiante'>Precio por paquete Estudiante Externo:<span> {$precios->precio_paquete_estudiante}</span></div>";
						echo "<div id='curso_general'>Precio por curso Publico en General:<span> {$precios->precio_curso_general}</span></div>";
						echo "<div id='paquete_general'>Precio por paquete Publico en General:<span> {$precios->precio_paquete_general}</span></div>";
					}
					?>
					</div>
					</p>
					<p >
						Selecciona Los cursos o paquetes que te interesan:
						<div id="paquetes">
						<?php
							require "plantilla_cursos.php";
						?>
						</div>
						
					
					</p>
					<p>Cursos seleccionados:
						<div class="seleccionado">
						</div>
						
					</p>
					
					
					<p class="no-border">
					<input  class="button" type="button" value="Generar Solicitud(es)" id="generar" />
					</p>
				</form>
				<div>
				<input type="button" class="button" value="Cotizar" id="cotizar" /><br />
					Total estimado:<span id="total"></span>
				</div>
				<br />
				<div id="clave_de_captura"></div>
				<div id="solicitudes_generadas" class="div_verde">
					Solicitudes Generadas:
					<div>
						
					</div>
				</div>
			</div>
			
			<p>Notas: <br />
			Los precios son estimados.<br />
			Al menos se debe llenar un campo RFC o Numero de cuenta.<br />
			El registro No garantiza un lugar en algun grupo. <br />
			
			</p>
		<!-- main ends -->
		</div>
				
		<div id="sidebar">
		
					
			
			<p>
			<a href="index.html"><img src="images/ptc.png" width="250" height="250" alt="image" class="float-left" /></a>
			
			</p>	
			
			
			<h3>Opciones</h3>
			<ul class="sidemenu">				
				<li> <strong><a href="" id="solicitud" ><?php echo utf8_encode('Solicitud de Inscripci�n') ?></a></strong></li>
				<li> <strong><a href="" id="reimpresion" ><?php echo utf8_encode('Reimprimir') ?></a></strong></li>
				<li> <strong><a href="" id="raw" ><?php echo utf8_encode('Formato vacio') ?></a></strong></li>
			
				
			</ul>	
				
		<!-- sidebar ends -->		
		</div>		
		
	<!-- content ends-->	
	</div>
		
	<!-- footer starts -->		
	<div id="footer">
						
			<p>
			&copy;PROTECO 2010 | Sistema desarrollado en PROTECO
			
			&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
			
			<a href="http://www.stylishtemplate.com/" title="Website Templates">Plantilla modificada</a> tomada de <a href="http://www.styleshout.com/">styleshout</a> |
			Valid <a href="http://validator.w3.org/check?uri=referer">XHTML</a> | 
			<a href="http://jigsaw.w3.org/css-validator/check/referer">CSS</a>
			
   		&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
			
			<a href="index.html">Home</a>&nbsp;|&nbsp;
   		<a href="index.html">Sitemap</a>&nbsp;|&nbsp;
	   	<a href="index.html">RSS Feed</a>
   		</p>			
	
	<!-- footer ends-->
	</div>

<!-- wrap ends here -->
</div>

</body>
</html>
